package com.gxa.mapper;

import com.gxa.common.PaginationResult;
import com.gxa.pojo.Announcement;
import com.gxa.pojo.Employee;
import com.gxa.pojo.Role;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * Created with IntelliJ IDEA.
 * User: zrf
 * Date: 2020/10/29 9:48
 * Description:
 * Version: V1.0
 */
public interface AnnMapper {
    /**
     * 增加公告
     *
     * @param announcementTitle,announcementDescribe
     * @return int
     */
    public int addAnn(@Param("announcementTitle") String announcementTitle,@Param("announcementDescribe") String announcementDescribe,@Param("employee_id") Integer employee_id);

    /**
     * 查询未发布公告
     *
     * @param currentPage,pageSize
     * @return 实例对象
     */
    public List<Map> selAnnUn(@Param("currentPage") Integer currentPage, @Param("pageSize") Integer pageSize);
    /**
     * 查询未发布公告总条数
     *
     * @param
     * @return 实例对象
     */
    public int annUnCont();
    /**
     * 查询已经发布公告
     *
     * @param currentPage,pageSize
     * @return 实例对象
     */
    public  List<Map> selAnn(@Param("currentPage") Integer currentPage, @Param("pageSize") Integer pageSize);
    /**
     * 查询已经发布公告总条数
     *
     * @param
     * @return 实例对象
     */
    public int annCont();

    /**
     * 根据id发布公告
     *
     * @param
     * @return 实例对象
     */
    public int updateAnnId(@Param("announcementId") Integer announcementId);
    /**
     * 根据id编辑公告信息
     *
     * @param
     * @return 实例对象
     */
    public int updateAnn(Announcement announcement);

    /**
     * 根据id删除未发布公告
     *
     * @param
     * @return 实例对象
     */
    public int delAnnById(@Param("announcementId") int announcementId);

    /**
     * 根据员工id查询员工信息
     *
     * @param
     * @return 实例对象
     */
    public Employee selEmploy(@Param("employeeId") Integer employeeId);

    /**
     * 根据员工id查询员工角色信息
     *
     * @param
     * @return 实例对象
     */
    public List<Role> selRole(@Param("employeeId") Integer employeeId);
}
